package com.ruoyi.supervise.service;

import java.util.List;

import com.ruoyi.supervise.domain.BasePostProPersonCert;
import com.ruoyi.supervise.domain.BaseSpecialEquPersonCert;
import com.ruoyi.supervise.domain.IGMPersonCreditRank;
import com.ruoyi.supervise.domain.IGMPersonalPoorInfo;
import com.ruoyi.supervise.domain.IGMPersonalWellInfo;
import com.ruoyi.supervise.domain.IntegrityPerformance;
import com.ruoyi.supervise.domain.PersonInfo;
import com.ruoyi.supervise.domain.ProTitlePersonCert;
import com.ruoyi.supervise.domain.RARegInfo;

/**
 * @ClassName: IPersonInfoService
 * @Description: 人员信息service
 * @Author wtj
 * @DateTime 2020年3月25日 上午11:39:20
 */
public interface IPersonInfoService 
{
	/**
	 * @Title: selectPersonInfoByGuid
	 * @Description: 根据guid查询人员信息
	 * @Author wtj
	 * @DateTime 2020年3月25日 上午11:38:32
	 * @param guid
	 * @return
	 */
  public PersonInfo selectPersonInfoByGuid(String guid);
  
  /**
   * @Title: selectRegTypeByPersonBaseGuid
   * @Description: 根据personBaseGuid查询注册师信息表
   * @Author wtj
   * @DateTime 2020年3月25日 下午4:06:33
   * @param personBaseGuid
   * @return
   */
  public List<RARegInfo> selectRegTypeByPersonBaseGuid(String personBaseGuid);
  
  /**
   * @Title: selectProTitlePersonCertByPersonBaseGuid
   * @Description: 根据personBaseGuid查询职称人员信息表
   * @Author wtj
   * @DateTime 2020年3月25日 下午4:07:16
   * @param personBaseGuid
   * @return
   */
  public List<ProTitlePersonCert> selectProTitlePersonCertByPersonBaseGuid(String personBaseGuid);
  
  /**
   * @Title: selectQYPersonInfoByGuid
   * @Description: 查询企业基本信息中的人员的信息
   * @Author wtj
   * @DateTime 2020年3月25日 下午5:20:28
   * @param personBaseGuid
   * @return
   */
  public PersonInfo selectQYPersonInfoByGuid(String id);
  
  /**
   * @Title: selectBasePersonInfoByCompanyGuid
   * @Description: 根据企业标识符查询企业人员
   * @Author wtj
   * @DateTime 2020年4月20日 下午4:09:57
   * @param companyGuid
   * @return
   */
  public List<PersonInfo> selectBasePersonInfoByCompanyGuid(PersonInfo personInfo);
  
  /**
   * @Title: selectBaseRARegInfoByPersonBaseGuid
   * @Description: 根据人员信息主键查询注册师信息
   * @Author wtj
   * @DateTime 2020年4月23日 下午5:01:21
   * @param personBaseGuid
   * @return
   */
  public List<RARegInfo> selectBaseRARegInfoByPersonBaseGuid(String personBaseGuid);
  
  /**
   * @Title: selectBaseProTitlePersonCertByPersonBaseGuid
   * @Description: 根据人员信息主键查询职称人员信息
   * @Author wtj
   * @DateTime 2020年4月23日 下午5:02:22
   * @param personBaseGuid
   * @return
   */
  public List<ProTitlePersonCert> selectBaseProTitlePersonCertByPersonBaseGuid(String personBaseGuid);
  
  /**
   * @Title: selectBasePostProPersonCertByPersonBaseGuid
   * @Description: 根据人员信息主键查询岗位类专业技术人员证
   * @Author wtj
   * @DateTime 2020年4月23日 下午5:03:24
   * @param personBaseGuid
   * @return
   */
  public List<BasePostProPersonCert> selectBasePostProPersonCertByPersonBaseGuid(String personBaseGuid);
  
  /**
   * @Title: selectBaseSpecialEquPersonCertByPersonBaseGuid
   * @Description: 根据人员信息主键查询特种作业岗位证
   * @Author wtj
   * @DateTime 2020年4月23日 下午5:04:58
   * @param personBaseGuid
   * @return
   */
  public List<BaseSpecialEquPersonCert> selectBaseSpecialEquPersonCertByPersonBaseGuid(String personBaseGuid);
  
  /**
   * @Title: selectIntegrityPerformanceListByPeopleIdCard
   * @Description: 根据人员身份证号查询人员业绩
   * @Author wtj
   * @DateTime 2020年4月28日 上午9:44:13
   * @param ip
   * @return
   */
  public List<IntegrityPerformance> selectIntegrityPerformanceListByPeopleIdCard(IntegrityPerformance ip);
  
  /**
   * @Title: selectIGMPersonalWellInfoListByPersonGuid
   * @Description: 根据人员标识符查询人员良好行为记录
   * @Author wtj
   * @DateTime 2020年4月28日 下午2:30:16
   * @param igmpwi
   * @return
   */
  public List<IGMPersonalWellInfo> selectIGMPersonalWellInfoListByPersonGuid(IGMPersonalWellInfo igmpwi);
  
  /**
   * @Title: selectIGMPersonalWellInfoByGuid
   * @Description: 根据标识符查询人员良好行为记录
   * @Author wtj
   * @DateTime 2020年4月28日 下午4:21:03
   * @param guid
   * @return
   */
  public IGMPersonalWellInfo selectIGMPersonalWellInfoByGuid(String guid);
  
  /**
   * @Title: selectIGMPersonalPoorInfoListByPersonGuid
   * @Description: 根据人员标识符查询人员不良行为记录
   * @Author wtj
   * @DateTime 2020年4月28日 下午5:39:48
   * @param igmppi
   * @return
   */
  public List<IGMPersonalPoorInfo> selectIGMPersonalPoorInfoListByPersonGuid(IGMPersonalPoorInfo igmppi);
  
  /**
   * @Title: selectIGMPersonalPoorInfoByGuid
   * @Description: 根据标识符查询人员不良行为记录
   * @Author wtj
   * @DateTime 2020年4月28日 下午5:40:32
   * @param guid
   * @return
   */
  public IGMPersonalPoorInfo selectIGMPersonalPoorInfoByGuid(String guid);
  
  /**
   * @Title: selectIGMPersonCreditRankByPersonGuid
   * @Description: 根据人员标识符查询查询人员诚信评价数据
   * @Author wtj
   * @DateTime 2020年4月29日 下午12:00:25
   * @param personGuid
   * @return
   */
  public List<IGMPersonCreditRank> selectIGMPersonCreditRankByPersonGuid(String personGuid);
  
  /**
   * @Title: selectPersonInfoList
   * @Description: 查询人员列表数据
   * @Author wtj
   * @DateTime 2020年6月15日 上午10:13:16
   * @param personInfo
   * @return
   */
  public List<PersonInfo> selectPersonInfoList(PersonInfo personInfo);
}
